package com.baoyouqun.domain.CreateCmd;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
public class InvoiceRecordCreateCmd implements Serializable {

    private static final long serialVersionUID = 1L;

    // 订单编号（图片中“编号123123123”，原属性保留并补充说明）
    @ApiModelProperty(value = "订单编号（如图片中的123123123）")
    private String orderId;

    // 订单类型（新增：匹配图片“2025-02-09年会员”，标识订单类型）
    @ApiModelProperty(value = "订单类型（如：年会员、单次服务，对应图片中的会员标识）")
    private String orderType;

    // 用户ID（原属性保留，关联用户表，无修改）
    @ApiModelProperty(value = "用户ID（关联用户表，标识发票申请人）")
    private String userId;

    // 发票抬头类型（新增：匹配图片“企业单位/非企业单位/个人”）
    @ApiModelProperty(value = "发票抬头类型（企业单位，非企业单位，个人）")
    private String invoiceTitleType;

    // 购方名称（新增：匹配图片“购方名称”输入框，企业/个人名称）
    @ApiModelProperty(value = "购方名称（发票抬头名称，如企业全称或个人姓名，对应图片输入项）")
    private String buyerName;

    // 购方税号（新增：匹配图片“购方税号”，仅企业需填）
    @ApiModelProperty(value = "购方税号（纳税人识别号，仅企业抬头需填写，对应图片输入项）")
    private String buyerTaxNo;

    // 发票总金额（原属性保留，关联订单金额，无修改）
    @ApiModelProperty(value = "发票总金额（元，与订单金额一致）")
    private BigDecimal totalAmount;

    // 发票内容（原属性保留，如“会员服务费”，无修改）
    @ApiModelProperty(value = "发票内容（如：年会员服务费、技术服务费，对应订单类型）")
    private String invoiceContent;

    // 接收邮箱（新增：匹配图片“电子邮件”输入框，用于推送电子发票）
    @ApiModelProperty(value = "接收邮箱（用户填写的电子发票推送邮箱，对应图片输入项）")
    private String receiveEmail;

    // 备注（原属性保留，匹配图片“备注内容”，无修改）
    @ApiModelProperty(value = "备注内容（用户自定义备注，打印在发票上，非必填，对应图片输入项）")
    private String remark;

}